package main

import "fmt"

/*
其他运算符

	1. &：返回变量存储地址。给出变量的实际地址
	2. * 指针变量。例如*a
*/
func main() {

	var a int = 4
	var b int = 44
	var ptr *int
	fmt.Println(ptr)
	fmt.Printf("ptr 为 %d\n", ptr)
	fmt.Printf("ptr 内存地址为 %d\n", &ptr)

	// 指针变量ptr包含了a变量的地址
	ptr = &a
	fmt.Printf("a 的值为 %d \n", a)
	fmt.Printf("a 的内存地址为 %d \n", &a)
	fmt.Println(ptr)
	fmt.Printf("ptr 值为 %d\n", ptr)
	fmt.Printf("*ptr 指针指向值为 %d\n", *ptr)

	ptr = &b
	fmt.Printf("b的内存地址为 %d \n", &b)
	fmt.Printf("ptr 为 %d\n", ptr)
	fmt.Printf("*ptr 为 %d\n", *ptr)
}
